/**
 * 合同abi
 * ERC20Token
 */
const abi = [{
    constant: true,
    inputs: [],
    name: "mintingFinished",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: true,
    inputs: [],
    name: "name",
    outputs: [{
      name: "",
      type: "string"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
        name: "_spender",
        type: "address"
      },
      {
        name: "_value",
        type: "uint256"
      }
    ],
    name: "approve",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: true,
    inputs: [{
        name: "_operator",
        type: "address"
      },
      {
        name: "_role",
        type: "string"
      }
    ],
    name: "checkRole",
    outputs: [],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: true,
    inputs: [],
    name: "totalSupply",
    outputs: [{
      name: "",
      type: "uint256"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: true,
    inputs: [{
        name: "_operator",
        type: "address"
      },
      {
        name: "_role",
        type: "string"
      }
    ],
    name: "hasRole",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
        name: "_from",
        type: "address"
      },
      {
        name: "_to",
        type: "address"
      },
      {
        name: "_value",
        type: "uint256"
      }
    ],
    name: "transferFrom",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
      name: "minter",
      type: "address"
    }],
    name: "removeMinter",
    outputs: [],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: true,
    inputs: [],
    name: "decimals",
    outputs: [{
      name: "",
      type: "uint8"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
        name: "_to",
        type: "address"
      },
      {
        name: "_amount",
        type: "uint256"
      }
    ],
    name: "mint",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
      name: "_value",
      type: "uint256"
    }],
    name: "burn",
    outputs: [],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
        name: "_spender",
        type: "address"
      },
      {
        name: "_subtractedValue",
        type: "uint256"
      }
    ],
    name: "decreaseApproval",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: true,
    inputs: [{
      name: "_owner",
      type: "address"
    }],
    name: "balanceOf",
    outputs: [{
      name: "",
      type: "uint256"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: false,
    inputs: [],
    name: "renounceOwnership",
    outputs: [],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: false,
    inputs: [],
    name: "finishMinting",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: true,
    inputs: [],
    name: "owner",
    outputs: [{
      name: "",
      type: "address"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: true,
    inputs: [],
    name: "ROLE_MINTER",
    outputs: [{
      name: "",
      type: "string"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: true,
    inputs: [],
    name: "symbol",
    outputs: [{
      name: "",
      type: "string"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
      name: "minter",
      type: "address"
    }],
    name: "addMinter",
    outputs: [],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
        name: "_to",
        type: "address"
      },
      {
        name: "_value",
        type: "uint256"
      }
    ],
    name: "transfer",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: true,
    inputs: [],
    name: "builtOn",
    outputs: [{
      name: "",
      type: "string"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
        name: "_spender",
        type: "address"
      },
      {
        name: "_addedValue",
        type: "uint256"
      }
    ],
    name: "increaseApproval",
    outputs: [{
      name: "",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
        name: "_tokenAddress",
        type: "address"
      },
      {
        name: "_tokens",
        type: "uint256"
      }
    ],
    name: "transferAnyERC20Token",
    outputs: [{
      name: "success",
      type: "bool"
    }],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    constant: true,
    inputs: [{
        name: "_owner",
        type: "address"
      },
      {
        name: "_spender",
        type: "address"
      }
    ],
    name: "allowance",
    outputs: [{
      name: "",
      type: "uint256"
    }],
    payable: false,
    stateMutability: "view",
    type: "function"
  },
  {
    constant: false,
    inputs: [{
      name: "_newOwner",
      type: "address"
    }],
    name: "transferOwnership",
    outputs: [],
    payable: false,
    stateMutability: "nonpayable",
    type: "function"
  },
  {
    inputs: [{
        name: "_name",
        type: "string"
      },
      {
        name: "_symbol",
        type: "string"
      },
      {
        name: "_decimals",
        type: "uint8"
      }
    ],
    payable: false,
    stateMutability: "nonpayable",
    type: "constructor"
  },
  {
    anonymous: false,
    inputs: [{
        indexed: true,
        name: "burner",
        type: "address"
      },
      {
        indexed: false,
        name: "value",
        type: "uint256"
      }
    ],
    name: "Burn",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [{
        indexed: true,
        name: "operator",
        type: "address"
      },
      {
        indexed: false,
        name: "role",
        type: "string"
      }
    ],
    name: "RoleAdded",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [{
        indexed: true,
        name: "operator",
        type: "address"
      },
      {
        indexed: false,
        name: "role",
        type: "string"
      }
    ],
    name: "RoleRemoved",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [{
        indexed: true,
        name: "to",
        type: "address"
      },
      {
        indexed: false,
        name: "amount",
        type: "uint256"
      }
    ],
    name: "Mint",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [],
    name: "MintFinished",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [{
      indexed: true,
      name: "previousOwner",
      type: "address"
    }],
    name: "OwnershipRenounced",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [{
        indexed: true,
        name: "previousOwner",
        type: "address"
      },
      {
        indexed: true,
        name: "newOwner",
        type: "address"
      }
    ],
    name: "OwnershipTransferred",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [{
        indexed: true,
        name: "owner",
        type: "address"
      },
      {
        indexed: true,
        name: "spender",
        type: "address"
      },
      {
        indexed: false,
        name: "value",
        type: "uint256"
      }
    ],
    name: "Approval",
    type: "event"
  },
  {
    anonymous: false,
    inputs: [{
        indexed: true,
        name: "from",
        type: "address"
      },
      {
        indexed: true,
        name: "to",
        type: "address"
      },
      {
        indexed: false,
        name: "value",
        type: "uint256"
      }
    ],
    name: "Transfer",
    type: "event"
  }
];
export default abi;
